package solitaire.controle;

import solitaire.application.Solitaire;
import solitaire.application.Tas;
import solitaire.application.Usine;
import solitaire.presentation.PColonne;
import solitaire.presentation.PSabot;
import solitaire.presentation.PSolitaire;
import solitaire.presentation.PTasDeCartesColorees;

public class CSolitaire extends Solitaire {

	PSolitaire presentation;
	
	public CSolitaire(String nom, Usine usine) {
		super(nom, usine);
		presentation = new PSolitaire(this);
	}	

    @Override
    public void initialiser () {
        super.initialiser();

        PSabot sabot = ((CSabot)super.sabot).getPresentation();

        PColonne[] colonnes = new PColonne[pilesAlternees.length];
        for (int i = 0; i < colonnes.length; i++) {
            colonnes[i] = ((CColonne)pilesAlternees[i]).getPresentation();
        }

        PTasDeCartesColorees[] tasCarteColorees = new PTasDeCartesColorees[pilesColorees.length];
        for (int i = 0; i < tasCarteColorees.length; i++) {
            tasCarteColorees[i] = ((CTasDeCartesColorees)pilesColorees[i]).getPresentation();
        }

        this.getPresentation().initialiser(sabot, colonnes, tasCarteColorees);
    }

	public PSolitaire getPresentation() {
		return presentation;
	}
}
